import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.web.client.RestTemplate;

import java.util.HashMap;
import java.util.Map;

@Component
public class RestTemplateSelector {

    @Autowired
    private RestTemplate restTemplate1;

    @Autowired
    private RestTemplate restTemplate2;

    private final Map<String, RestTemplate> restTemplateMap = new HashMap<>();

    public RestTemplateSelector() {
        // 根据 URL 前缀配置不同的 RestTemplate
        restTemplateMap.put("https://example1.com", restTemplate1);
        restTemplateMap.put("https://example2.com", restTemplate2);
    }

    public RestTemplate getRestTemplate(String url) {
        for (Map.Entry<String, RestTemplate> entry : restTemplateMap.entrySet()) {
            if (url.startsWith(entry.getKey())) {
                return entry.getValue();
            }
        }
        // 默认返回第一个 RestTemplate
        return restTemplate1;
    }
}    